<button type="button" #switchElement
  apes-wave
  class="apes-switch"
  [disabled]="apesDisabled"
  [class.apes-switch-checked]="checked"
  [class.apes-switch-loading]="apesLoading"
  [class.apes-switch-disabled]="apesDisabled"
  [class.apes-switch-small]="apesSize === 'small'"
  [apesWaveExtraNode]="true"
  (keydown)="onKeyDown($event)">
  <i *ngIf="apesLoading" apes-icon apesType="loading" class="apes-switch-loading-icon"></i>
  <span class="apes-switch-inner">
    <span>
      <ng-container *ngIf="checked">
        <ng-container *apesStringTemplateOutlet="apesCheckedChildren">{{ apesCheckedChildren }}</ng-container>
      </ng-container>
      <ng-container *ngIf="!checked">
        <ng-container *apesStringTemplateOutlet="apesUnCheckedChildren">{{ apesUnCheckedChildren }}</ng-container>
      </ng-container>
    </span>
  </span>
</button>
